package com.gp8.tier1;
import java.util.Scanner;

public class MenuPiaffeur {
	private InterfacePiaffeur _interfacePiaffeur;
	private Scanner scanInput = new Scanner(System.in);


	public MenuPiaffeur (InterfacePiaffeur interfacePiaffeur) {
		_interfacePiaffeur = interfacePiaffeur;
	}


	/**
	 * menuPrincipal : menu principal de l'appli
	 */
	public void menuPrincipal() 
	{
		int menu;
		do 
		{
			System.out.println(" ========================================================");
			System.out.println("|                   Bienvenue dans Piaffeur              |");
			System.out.println("|                                                        |");
			System.out.println("| CREATION D'UN COMPTE : 1                               |");
			System.out.println("| CONNEXION A VOTRE COMPTE : 2                           |");
			System.out.println("| QUITTER : 0                                            |");
			System.out.println(" ========================================================");

			menu = scanInput.nextInt();
			switch (menu)
			{
			case 0 :
				// Prendre en compte ce cas permet d'éviter d'afficher 
				// "Choix incorrect" quand on tape 2
				break;
			case 1 : 
			{
				_interfacePiaffeur.formulaireCreation();
				break;
			}
			case 2 : 
			{
				_interfacePiaffeur.formulaireConnexion();
				break;
			}
			default : 
			{
				System.out.println("Désolé, ce choix est incorrect.");
				break;
			}
			}
		} while (menu != 0);	
	}


	/**
	 * menuPiaffeur : menu une fois le piaffeur connecté
	 */
	public void menuPiaffeur(int id) {
		int menuPiaffeur;
		do {
			System.out.println(" ========================================================");
			System.out.println("| MON COMPTE : 1                                         |");
			System.out.println("| PIAFFER: 2                                             |");
			System.out.println("| MES PIAFFERIES : 3                                     |");
			System.out.println("| MES PIAFFEURS : 4                                      |");
			System.out.println("| RECHERCHER : 5                                         |");
			System.out.println("| DECONNEXION : 0                                        |");
			System.out.println(" ========================================================");

			menuPiaffeur = scanInput.nextInt();
			switch (menuPiaffeur)	{
                    case 0 :
						_interfacePiaffeur.deconnexion(id);
                        break;
					case 1 : 
					{
						_interfacePiaffeur.consulterCompte(id);
						break;
					}
					case 2 : 
					{
						_interfacePiaffeur.formulairePiaffer(id);
						break;
					}
					case 3 : 
					{
						_interfacePiaffeur.recupererPiafferies(id);
						break;
					}
					case 4 : 
					{
						_interfacePiaffeur.recupererAbonnements(id);
						break;
					}
					case 5 :
					{
						this.menuRecherche(id);
						break;
					}
					default : 
					{
						System.out.println("Désolé, ce choix est incorrect.");
						break;
					}
				}
		} while (menuPiaffeur != 0);	
		
	}

	/**
	 * menuRecherche : menu lors d'une recherche
	 */
	public void menuRecherche(int id) {
		int menuRecherche;
		do {
			System.out.println(" ========================================================");
			System.out.println("| RECHERCHER UN PIAFFEUR : 1                             |");
			System.out.println("| RECHERCHER UNE PIAFFERIE : 2                           |");
			System.out.println("| RETOUR : 0                                             |");
			System.out.println(" ========================================================");

			menuRecherche = scanInput.nextInt();
				switch (menuRecherche) 	{
                    case 0 :
                    	menuPiaffeur(id);
                        break;
					case 1 : 
					{
						_interfacePiaffeur.formulaireRecherchePiaffeur(id);
						break;
					}
					case 2 : 
					{
						_interfacePiaffeur.formulaireRecherchePiafferie(id);
						break;
					}
					default : 
					{
						System.out.println("Désolé, ce choix est incorrect.");
						break;
					}
				}
		} while (menuRecherche != 0);	
	}
	
	/**
	 * menuPiafferies : menu lors de l'affichage des "MES PIAFFERIES"
	 */
	public void menuPiafferies(int id) {
		int menuRecherche;
		do {
			System.out.println(" ========================================================");
			System.out.println("| SUPPRIMER UNE PIAFFERIE : 1                            |");
			System.out.println("| RETOUR : 0                                             |");
			System.out.println(" ========================================================");

			menuRecherche = scanInput.nextInt();
				switch (menuRecherche) 	{
                    case 0 :
                    	menuPiaffeur(id);
                        break;
					case 1 : 
					{
						_interfacePiaffeur.supprimerPiafferies(id);
						break;
					}
					default : 
					{
						System.out.println("Désolé, ce choix est incorrect.");
						break;
					}
				}
		} while (menuRecherche != 0);	
	}
	
	/**
	 * menuAbonnements : menu lors de l'affichage du "formulaireRecherchePiaffeur"
	 */
	public void menuAbonnements(int id) {
		int menuRecherche;
		do {
			System.out.println(" ========================================================");
			System.out.println("|    Que voulez vous faire ?	                         |");
			System.out.println("|           S'ABONNER : 1                                |");
			System.out.println("|           SE DESABONNER : 2                            |");
			System.out.println("|           RETOUR : 0                                   |");
			System.out.println(" ========================================================");

			menuRecherche = scanInput.nextInt();
				switch (menuRecherche) 	{
                    case 0 :
                    	menuPiaffeur(id);
                        break;
					case 1 : 
					{
						_interfacePiaffeur.formulaireAbonnementPiaffeur(id);
						break;
					}
					case 2 : 
					{
						_interfacePiaffeur.supprimerAbonnement(id);
						break;
					}
					default : 
					{
						System.out.println("Désolé, ce choix est incorrect.");
						break;
					}
				}
		} while (menuRecherche != 0);	
	}
}
